<?php

class auditoriasChecklistModel extends Model3
{
    public function __construct() {
        parent::__construct('adic.cat_preg');
    }
    
    public function getPreguntas($id_grupo=''){
        
        $where = $id_grupo != '' ? "AND adic.Grupo.id = $id_grupo ORDER BY pos" : "";
        
        return $this->lista("
            SELECT
                dbo.procesos.id_proceso,
                dbo.procesos.proc_nom,
                adic.Grupo.descrip,
                adic.Grupo.id as id_grupo,
                adic.cat_preg.pregunta,
                adic.cat_preg.id,
                adic.cat_preg.clasificacion,
                adic.cat_preg.calificacion,
                adic.cat_categorias.descrip as categoria
            FROM dbo.procesos
            LEFT JOIN adic.Grupo ON adic.Grupo.auditoria = dbo.procesos.id_proceso
            LEFT JOIN adic.cat_preg ON adic.cat_preg.grupo = adic.Grupo.id
            LEFT JOIN adic.cat_categorias ON adic.cat_preg.clasificacion = adic.cat_categorias.id
            WHERE dbo.procesos.id_proceso IN (30, 31, 32, 38) $where
        ");
    }
    
    public function getGrupos(){
        return $this->lista("
            SELECT
                adic.Grupo.*
            FROM adic.Grupo
        ");
    }
    
    public function getCategorias(){
        return $this->lista("
            SELECT
                adic.cat_categorias.*
            FROM adic.cat_categorias
        ");
    }
    
    public function getPos($id){
        return $this->lista("
            SELECT adic.cat_preg.pos
            FROM adic.cat_preg
            WHERE adic.cat_preg.grupo = 3
            ORDER BY adic.cat_preg.pos DESC
        ");
    }
    
    public function getEvaluacion($id_agenda,$id_grupo){
        return $this->lista("
            SELECT *
            FROM adic.eval_head
            WHERE
                adic.eval_head.folio = $id_agenda 
                AND adic.eval_head.grupo = $id_grupo
        ");
    }
    
    public function setEvaluacion($id_agenda,$id_grupo){
        return $this->lista("
            INSERT INTO adic.eval_head (folio, grupo, status)
            VALUES ($id_agenda,$id_grupo,0)
        ");
    }
}

?>
